scratchmitedufandomcom-20200214-history
Scratch
Scratch is a computer application aimed primarily at children that allows them to explore and experiment with the concepts of computer programming by using the simple graphical interface. It is developed by the Life hi long Kindergarten group at the MIT Media Lab by a team led by Mitchel Resnick and first appeared in the summer of 2007. Scratch can be installed and freely redistributed on any Windows, Mac OS X or Linux computer. The source code is made available under a license that allows for modifications for non-commercial uses. The name Scratch is derived from the turntablist technique of scratching, and refers to both the language and its implementation. The similarity to musical "scratching” is the easy reusability of pieces: in Scratch all the objects, graphics, sounds, and scripts can be easily imported to a new program and combined in new ways allowing beginners to get quick results and be motivated to try further. The language and environment Scratch is used worldwide in many different settings: schools, museums, community centers, and homes. It is intended especially for 6- to 16-year-olds, but people of all ages have used Scratch. For example, younger kids can create projects with their parents or older siblings, and college students use Scratch in some introductory computer science classes. In designing the language, the main priority was to make the language and development environment intuitive and easily learned by children who had no previous programming experience. There is a strong contrast between the powerful multi-media functions and multi-threaded programming style and the rather limited scope of the Scratch programming language. Screenshot of Scratch 1.4's development environment at startup (running on Apple Inc.'s Mac OS X Snow Leopard)The user interface for the Scratch development environment divides the screen into several panes: on the left is the blocks palette, in the middle the current sprite info and scripts area, and on the right the stage and sprite list. The blocks palette has code fragments (called "blocks") that can be dragged onto the scripts area to make programs. To keep the palette from being too big, it is organized into 8 groups of blocks: movement, looks, sound, pen, control, sensing, operators, and variables. In versions 1.3 and lower operators was numbers. Empirical studies were made of various features—those that interfered with intuitive learning were discarded, while those that encouraged beginners and made it easy for them to explore and learn were kept. Some of the results are surprising, making Scratch quite different from other teaching languages (such as BASIC, Logo, or Alice). For example, multi-threaded code with message passing is fundamental to Scratch, but it has no procedures or file Input/Output (I/O) and only supports one-dimensional arrays, known as Lists. Floating point scalars and strings are supported as of version 1.4, but with limited string manipulation capability. Online Community The Scratch slogan or motto is "Imagine · Program · Share." The emphasis on sharing and the social aspects of creativity are an important part of the pedagogy for Scratch. Programs are not seen as black boxes, but as objects for remixing to make new projects. Scratch programs can be uploaded directly from the development environment to the Scratch website, where other members of the Scratch community can download them (including the full source code) for learning or for remixing into new projects. Members can also comment, tag, "love" others' projects and share ideas. The projects published in the Scratch website are licensed under a Creative Commons attribution and are played in a Java applet known as the Scratch Player. The Scratch Player allows Scratch programs to be run from almost any browser. As of December 15, 2009 the community had more than 408,227 registered members, 95,033 of them had uploaded projects, with a total of 796,359 projects shared by the whole community. The website receives close 7 million page views per month. There are also local Scratch websites in places such as Portugal and the United Arab Emirates. In 2008, the Scratch online community platform (named "ScratchR") received an honorary mention in the Ars Electronica Prix. Screenshot of the Scratch website.